Better fix for keynav dnd
authorMatthias Clasen <mclasen@redhat.com>
Thu, 23 Dec 2010 03:33:40 +0000 (22:33 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Thu, 23 Dec 2010 03:33:40 +0000 (22:33 -0500)
With proper rounding, we can go back to a 'small step' of 1.

gtk/gtkdnd.c

index d0c230179811ca28c12508a2e5564f54fc365e72..48d726bc95fafd8b541ead27f2cae6dea3b4e5c7 100644 (file)
@@ -4150,8 +4150,8 @@ gtk_drag_cancel (GtkDragSourceInfo *info, GtkDragResult result, guint32 time)
  *************************************************************/
 
 static gboolean
-gtk_drag_motion_cb (GtkWidget      *widget, 
-                   GdkEventMotion *event, 
+gtk_drag_motion_cb (GtkWidget      *widget,
+                   GdkEventMotion *event,
                    gpointer        data)
 {
   GtkDragSourceInfo *info = (GtkDragSourceInfo *)data;
@@ -4170,7 +4170,9 @@ gtk_drag_motion_cb (GtkWidget      *widget,
   else
     screen = gdk_event_get_screen ((GdkEvent *)event);
 
-  gtk_drag_update (info, screen, event->x_root, event->y_root, (GdkEvent *) event);
+  x_root = (gint)(event->x_root + 0.5);
+  y_root = (gint)(event->y_root + 0.5);
+  gtk_drag_update (info, screen, x_root, y_root, (GdkEvent *) event);
 
   return TRUE;
 }
@@ -4184,7 +4186,7 @@ gtk_drag_motion_cb (GtkWidget      *widget,
  *************************************************************/
 
 #define BIG_STEP 20
-#define SMALL_STEP 2
+#define SMALL_STEP 1
 
 static gboolean
 gtk_drag_key_cb (GtkWidget         *widget,